
package com.chongchong.system.mapper;

import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.chongchong.system.entity.Role;
import com.chongchong.system.vo.RoleVO;

import java.util.List;

/**
 * Mapper 接口
 *
 * @author
 */
public interface RoleMapper extends BaseMapper<Role> {

	/**
	 * 自定义分页
	 *
	 * @param page
	 * @param role
	 * @return
	 */
	List<RoleVO> selectRolePage(IPage page, RoleVO role);

	/**
	 * 获取树形节点
	 *
	 * @param tenantId
	 * @param excludeRole
	 * @return
	 */
	List<RoleVO> tree(String tenantId, String excludeRole);

	/**
	 * 根据角色内外属性获取对应角色树形结构
	 *
	 *
	 * @param tenantId
	 * @param excludeRole
	 * @return
	 */
	List<RoleVO> treeBYRoleProperty(String tenantId, String excludeRole,Integer type);

	List<RoleVO> selectRoleById(Long[] roleIds);


	List<RoleVO> selectChildById(Long roleId);
	/**
	 * 获取角色名
	 *
	 * @param ids
	 * @return
	 */
	List<String> getRoleNames(Long[] ids);

	/**
	 * 根据id查询角色
	 * @param ids
	 * @return
	 */
	List<Long> getRoleByIds(Long[] ids);
	/**
	 * 根据ids查询角色信息
	 * @param ids 角色id组
	 * @return 角色信息集合
	 */
	List<Role> getRoleInfoByIds(Long[] ids);

}
